package nsoft.swing.engine;

import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JPanel;

import nsoft.swing.annotation.AButton;
import nsoft.swing.annotation.AComponent;
import nsoft.swing.annotation.APanel;
import nsoft.util.Property;

public interface IComponentFactory {

	public JComponent createComponent(Property property,
			AComponent component);

	public JLabel createLabel(Property property, AComponent component);

	public JButton createButton(final Property property,
			AButton buttonMetadata);
	public JPanel createPanel(final APanel panelMetadata);
}